|
The aim of the diploma thesis is to enable coordination of
intra-process loops and scopes using WS-BPEL business processes and
WS-Coordination protocols. In such a scenario a business process is
split into several process fragments distributing its loops and
scopes. These process fragments have to produce the same behavior as
the original process. One of the difficulties in this approach is to
achieve a common outcome of distributed loops and scopes and this
work concerns this problem especially. In particular, the starting
and finishing of fragments of a distributed loop or scope have to be
synchronized. As do iterations of a loop. Furthermore, fault
handling as well as compensation handling of a distributed scope has
to be executed in a manner such that the behavior is propagated into
all fragments of the scope.
A system is designed and implemented to enable a concrete
realization the protocols, defined as part of the WS-Coordination
framework, for coordinating split loops and scopes defined in [15].
To do so, this thesis define the protocols WSDL definitions (incl.
XML Schemas), BPEL element extensions to identify activity
fragments, and the concrete, required extensions to WS-Coordinations
registration so fragments can be joined to the correct instance.
Also, it provides the architecture of a coordination system that can
react to and affect behavior deep in a BPEL process instance. The
system consists of an execution environment for fragmented BPEL
processes, using a controller interacting with a modified open
source BPEL engine and a coordinator implementation according to the
WS-Coordination specification. The fragmented BPEL execution
environment may exist multiple times in a network each running an
arbitrary amount of BPEL fragments however, the coordinator is a
single entity. The thesis shows the modifications and extensions
necessary for instrumenting a BPEL engine to support running a scope
or loops as a fragment. The results of this work are presented by
executing diverse scenarios, coordinated using the designed system
and protocols. The scenarios include scopes with fault and
compensation handlers, multiple loops, and loops nested in faulting
split scopes, all split among several process fragments.
|